package com.lfs.admin.dao;

import com.lfs.admin.model.entity.channel.ChannelGroupEntity;
import com.lfs.admin.model.entity.channel.ChannelToGroupEntity;
import com.lfs.admin.model.vo.channel.ChannelGroupVO;
import com.lfs.admin.model.vo.channel.ChannelToGroupVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ChannelGroupDao {

    List<ChannelGroupEntity> queryChannelGroupList(ChannelGroupVO channelGroupVo);

    List<ChannelToGroupEntity> getChannelToGroup(ChannelToGroupVO channelToGroupVo);

    ChannelGroupEntity getChannelGroupById(@Param("id") Integer id);

    ChannelGroupEntity getChannelGroupByCode(@Param("groupNum") String groupNum);

    ChannelToGroupEntity getChannelToGroupByCode(@Param("channelGroupId") Integer channelGroupId, @Param("channelNum") Long channelNum);

    int updateChannelGroup(ChannelGroupVO channelGroupVo);

    int updateWeight(ChannelToGroupVO channelToGroupVO);

    int addChannelGroup(ChannelGroupVO channelGroupVo);

    int addChannelToGroup(List<ChannelToGroupVO> productToGroupVoList);

    int deleteChannelGroup(Integer[] ids);

    int deleteChannelToGroup(Integer[] ids);

}
